#ifndef SSD2832_H
#define SSD2832_H

//#include "SPI_INIT.h" 
#include "IOConfig.h"
#include "stm32f7xx.h"
#include "delay.h"
//#include "fsmc.h"

void Set_2828_reset(u8 Sig_Mode);
void Set_panel_reset(void);
void SSD2828_W_Cmd(u8 SigMode ,u8 channel,u8 cmd);
void SSD2828_W_Cmd_NOCS(u8 cmd);
void SSD2828_W_Data(u8 SigMode ,u8 channel,u16 Value);
u16   SSD2828_R_Data(u8 SigMode ,u8 channel);
void SSD2828_W_Reg_u32(u8 SigMode ,u8 channel,u8 Reg, u32 Value);
void SSD2828_W_SCM_Reg_u32(u8 SigMode ,u8 channel, u16 Cmd ,u32 Value);
void SSD2828_W_Reg(u8 SigMode ,u8 channel,u8 Reg, u16 Value);
u32  SSD2828_R_Reg(u8 SigMode ,u8 channel,u8 Reg);
u16  SSD2828_R_Reg_Flow(u8 SigMode ,u8 channel);
void SSD2828_W_Array(u8 SigMode ,u8 channel,u8 para[],u8 offerset);

u8 SSD2828_W_Array_SPI(u8 SigMode ,u8 channel,u8 para[],u8 offerset);
//void SSD2828_W_Array_SPI(u8 SigMode ,u8 channel,u8 para[],u8 offerset, USBD_HandleTypeDef *pdev);

void SSD2828_W_RAM_buffer_8bits_part(float pclk,u8 SigMode ,u8* buffer ,u16 length,u8  multiple ,u8 DisMode);
void SSD2828_W_RAM_buffer_565bits_part(float pclk,u8 SigMode ,u8* buffer ,u16 length,u8  multiple ,u8 DisMode);
//void SSD2828_W_RAM_PURE_COLOR(float pclk,u8 SigMode ,u8 channel ,u16 H_Pix,u16 V_Pix,u8 R ,u8 G,u8  B );
void SSD2828_W_CMD_LOGIC_Pure_Color(float pclk,u8 SigMode ,u8 channel ,u16 H_Pix,u16 V_Pix,u32 Color);
void SSD2828_W_CMD_EDIT_LOGIC_Pic(float pclk,u8 SigMode ,u8 channel ,u16 H_Pix,u16 V_Pix,u16 PIC_NUM,u32 Color_M,u32 Color_L,u16 X0,u16 X1,u16 Y0,u16 Y1,u16 R0);
void SSD2828_W_RAM_Pic(float pclk,u8 SigMode ,u8 channel ,u16 H_Pix,u16 V_Pix,u8 R ,u8 G,u8  B );
void SSD2828_W_LOGIC_Pic(float pclk,u8 SigMode ,u8 channel ,u16 H_Pix,u16 V_Pix, u16 PIC_NUM);
void SSD2828_Set_Window(u8 SigMode ,u8 channel,u16 H_Start,u16 H_End,u16 V_Start,u16 V_End);
void SSD2832_initial_SCM(u8 signal_mode,u8 channel);
void SSD2828_initial_on(u8 signal_mode,u8 channel);
void Driver_ic_initial_on(u8 signal_mode,u8 channel);
void SPI_signal_on(u8 signal_mode,u8 channel);
void UsbBMPData2FPGAbyFSMC(u8* buffer);
# endif

